#ifndef _MACRO_H_
#define _MACRO_H_

#define PROGRAM_VERSION "1.5"

//GPS分段收费用户文件存储相关
#define DEF_UseGPS_InfoMaxNum			( 60 )			//GPS站点最大数量
#define DEF_UseGPS_UnPrMaxNum			( 80 )			//GPS站点间票价最大数量

//城市代码
#define DEF_OthCityID_MaxNum			( 50 )			//异地城市代码最大数量


#define DEF_WiCOM_TxRx_BUF_SIZE		( 1536L )			// COM口发送与接收缓冲区大小定义1.5k   
#define DEF_SendRecErrMaxNumber		( 2u  )     


#define DEF_SysCom_Debug  errmsg("Er F=%s N=%d\r\n",__FILE__,__LINE__);
#define	DEF_TcpChanNum					( 1UL )					//通讯通道

#define UP_CAKEY_INDEX			0	 //公钥相关参数读取或更新时传入的索引参数
#define UP_ICPAR_INDEX			1	 //IC卡参数相关参数读取或更新时传入的索引参数
#define UP_PAR_INDEX			2	 //其它所有参数相关参数读取或更新时传入的索引参数

#define  POS_SoftVer     "TC_B502_2.18.22" 

#define  DEF_NC_RecFileMaxNum		( 10ul )
#define  AH_DEF_REC_DIR_SIZE		( 28ul )					//记录目录文件大小
#define  AH_DEF_REC_FILE_NO			( DEF_NC_RecFileMaxNum )	//记录文件个数
#define	 DEF_CycMemMaxCout			( 64000UL )				//最大值 小于65535


#define  NC_FlashErr				(0x0000FFFFul)		//FLASH故障 错误
#define	 NC_NoRecERR				(0x000F0000ul)		//无记录错误
#define	 DEF_RecMaxCout			    ( 5UL )				//读取记录失败循环读取的次数

#define DEF_BlkMoryBank_Black01		( 1ul )				//黑名单

//参数下载标记
#define	DEF_Update_Bit0			( 0x0001 )			   //增量黑名单更新
#define	DEF_Update_Bit1			( 0x0002 )			   //参数卡下发
#define	DEF_Update_Bit2			( 0x0004 )			   //票价卡下发
#define	DEF_Update_Bit3			( 0x0008 )			   //站点GPS
#define	DEF_Update_Bit4			( 0x0010 )			   //站点间票价
#define	DEF_Update_Bit5			( 0x0020 )			   //互联互通城市代码
#define	DEF_Update_Bit6			( 0x0040 )			   //更新时间
#define	DEF_Update_Bit7	    	( 0x0080 )
#define	DEF_Update_Bit8			( 0x0100 )
#define	DEF_Update_Bit9			( 0x0200 )
#define	DEF_Update_Bit10		( 0x0400 )
#define	DEF_Update_Bit11		( 0x0800 )
#define	DEF_Update_Bit12  	    ( 0x1000 )
#define	DEF_Update_Bit13		( 0x2000 )
#define	DEF_Update_Bit14		( 0x4000 )
#define	DEF_Update_Bit15    	( 0x8000 )			   	//远程升级


#define DEF_FLASH_MaxRecLength  300

//==============>>记录类型定义
//通讯协议记录类型
#define	DEF_RecType_QD					( 0x01 )			//QD 签点记录
#define DEF_RecType_MotoKQ				( 0x02 )			//KQ 司机考勤记录 包括签到与签退
#define DEF_RecType_CircChe				( 0x03 )			//CC 线路变更记录
#define DEF_RecType_MotoZW				( 0x05 )			//ZW 司机当班总额记录
#define DEF_RecType_Blacklist			( 0x06 )			//BL 锁卡记录
#define	DEF_RecType_Trade				( 0x08 )			//TD 消费记录类型
#define	DEF_RecType_Clr					( 0x09 )			//CL 消费记录清0记录


//记录存储区定义
#define DEF_RecMoryBank_Black01			( 1ul )				//公交消费记录存储 
#define DEF_RecMoryBank_Black02			( 2ul )				//公交消费异常记录 
#define DEF_RecMoryBank_Black03			( 3ul )				//公交消费记录保留
#define DEF_RecMoryBank_Black04			( 4ul )				//银联消费交易正常记录 
#define DEF_RecMoryBank_Black05			( 5ul )				//银联消费交易异常记录
#define DEF_RecMoryBank_Black06			( 6ul )				//银联公钥记录区
#define DEF_RecMoryBank_Black07			( 7ul )				//银联IC卡参数
#define DEF_RecMoryBank_Black08			( 8ul )				//银联数据上传返回信息记录区			
#define DEF_RecMoryBank_Black09			( 9ul )				//日志区 
#define DEF_RecMoryBank_Black10			( 10ul )			//未启用 

//记录长度配置
#define  DEF_REC_LEN_SIZE_01         100       //第一条记录文件的长度
#define  DEF_REC_LEN_SIZE_02         100
#define  DEF_REC_LEN_SIZE_03         100
#define  DEF_REC_LEN_SIZE_04         280
#define  DEF_REC_LEN_SIZE_05         280
#define  DEF_REC_LEN_SIZE_06         300
#define  DEF_REC_LEN_SIZE_07         300
#define  DEF_REC_LEN_SIZE_08         36
#define  DEF_REC_LEN_SIZE_09         300
#define  DEF_REC_LEN_SIZE_10         300

#define APP_FILE_PRENAME							("U")

//黑名单存储区
#define DEF_BlkMemoryBank_Black						( 1ul )				//黑名单
#define DEF_RecMemoryBank_White						( 2ul )				//白名单

//用户文件区
#define	DEF_USERID_SysCfg							( 1ul )				//系统参数
#define	DEF_USERID_DealCfg						    ( 2ul )				//票价参数
#define	DEF_USERID_OthCfg					        ( 3ul )				//操作员参数

#define	DEF_USERID_CityID					        ( 4ul )				//城市代码
#define	DEF_USERID_UPBinInfo						( 5ul )				//银行卡bin号


#define	DEF_USERID_UP_PosTlv					    ( 6ul )				//
#define	DEF_USERID_UP_SysCfg					    ( 7ul )				//
#define	DEF_USERID_UP_ComStat					    ( 8ul )				//

#define	DEF_USERID_OthCfgExt					    ( 9ul )				//司机卡与IAP升级相关参数
#define	DEF_USERID_OthCfgExt1						( 10ul )				//司机卡与IAP升级相关参数


#endif

